for循环中的"初始化"、"条件表达式"和"增量"都是选择项, 即可以缺省, 但";"不能缺省。

来源:百度知道 编辑:UC知道 时间:2024/05/26 05:31:25
这里说到";"不能缺省,这是什么意思?三个条件可以同时缺省吗?或者缺省两个 请举例说明 谢谢

语法上是可以同时缺省的,“;”必须有,这是语法、
给你举个例子:
for(int i=0;i<10;i++){}
意思就是,现在i的值是0,
第一次,i的值小于10吗?小于则执行{}中的代码,不小于for循环结束,i的值自加1变成1
第二次,现在i的值是1,判断i的值小于10吗?小于则执行{}中的代码,不小于for循环结束,i的值自加1变成2
...
第十次,现在i的值是9,判断i的值小于10吗?小于则执行{}中的代码,不小于for循环结束,i的值自加1变成10
第十一次,现在i的值是10,i的值不小于10,循环结束。
如果省略int i=0;那么i的值在for循环之前要有定义否则报错
如果省略i<10;那么循环没有限制,i的值可以无限自加,循环变成死循环
如果省略i++;那么如果你在{}中没有改变i的值,则如果i的初始值符合中间的条件那么就是死循环,不符合则永远不执行循环。
由此可见从应用的角度讲第一个第三个是可以省略的,中间的最好不省略,除非你想无限循环。

一般的是for(int i=0;i<5;i++)
三个条件不可以同时缺省。

可以同时缺省

for(; ;)
{输出:}
这样就会一直输出 死循环